{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import os\n",
    "\n",
    "os.environ['CUDA_VISIBLE_DEVICES'] = ''"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "import malaya"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "from malaya.text.function import remove_html_tags"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "from transformers import T5Tokenizer, T5ForConditionalGeneration\n",
    "\n",
    "tokenizer = T5Tokenizer.from_pretrained('mesolitica/t5-small-standard-bahasa-cased')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['finetune-t5-base-standard-bahasa-cased-v2/checkpoint-456000',\n",
       " 'finetune-t5-base-standard-bahasa-cased-v2/checkpoint-458000']"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from glob import glob\n",
    "\n",
    "checkpoints = sorted(glob('finetune-t5-base-standard-bahasa-cased-v2/checkpoint-*'))\n",
    "checkpoints"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "model = T5ForConditionalGeneration.from_pretrained(checkpoints[-1])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "isi_penting = ['Dr M perlu dikekalkan sebagai perdana menteri',\n",
    "              'Muhyiddin perlulah menolong Dr M',\n",
    "              'rakyat perlu menolong Muhyiddin']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "from unidecode import unidecode\n",
    "\n",
    "def remove_repeat_fullstop(string):\n",
    "    return ' '.join([unidecode(k.strip()) for k in string.split('.') if len(k.strip())])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'tajuk-surat-khabar: 1. Dr M perlu dikekalkan sebagai perdana menteri. 2. Muhyiddin perlulah menolong Dr M. 3. rakyat perlu menolong Muhyiddin.'"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "points = [\n",
    "    f'{no + 1}. {remove_repeat_fullstop(string)}.'\n",
    "    for no, string in enumerate(isi_penting)\n",
    "]\n",
    "points = ' '.join(points)\n",
    "points = f'tajuk-surat-khabar: {points}'\n",
    "points"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'Bekas Perdana Menteri, Tan Sri Muhyiddin Yassin menegaskan, Dr Mahathir Mohamad perlu dikekalkan sebagai perdana menteri sehingga pilihan raya umum akan datang. Beliau juga menjelaskan, Dr Mahathir perlulah menolong Dr Mahathir dan kerajaan Perikatan Nasional (PN) untuk memulihkan ekonomi negara. \"Ini merupakan satu amanah yang harus dipikul oleh Dr Mahathir dan kerajaan PN. \"Rakyat perlu menolong Muhyiddin untuk memulihkan ekonomi negara dan memulihkan ekonomi negara,\" katanya dalam satu hantaran di laman Facebooknya pada Khamis.'"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "input_ids = tokenizer.encode(points, return_tensors = 'pt')\n",
    "outputs = model.generate(input_ids, do_sample=True,\n",
    "    max_length=256,\n",
    "    top_k=0,\n",
    "    temperature=0.5)\n",
    "t = tokenizer.decode(outputs[0], skip_special_tokens=True)\n",
    "t"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'KUALA LUMPUR:Tun Dr Mahathir Mohamad seharusnya terus kekal sebagai perdana menteri sebagai Presiden PKR dan menjadi Pengerusi Pakatan Harapan, kata Penganalisis Politik, Mujibu Abd Muis. \"Bagi rakyat pula, Dr Mahathir perlulah membela Dr M atau menjadi perdana menteri lagi. Bagi Presiden Pakatan Harapan, Datuk Seri Anwar Ibrahim pula, Dr Mahathir perlu kekal sebagai presiden parti. Selain itu, Setiausaha Agung UMNO, Tan Sri Annuar Musa berkata, Dr Mahathir juga perlu terus menjadi presiden parti. \"Dr Mahathir juga perlu terus kekal sebagai presiden parti. Untuk rakyat juga, rakyat perlu menolong,\" ujarnya.'"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "input_ids = tokenizer.encode(points, return_tensors = 'pt')\n",
    "outputs = model.generate(input_ids, do_sample=True,\n",
    "    max_length=256,\n",
    "    top_k=50, \n",
    "    top_p=0.95)\n",
    "t = tokenizer.decode(outputs[0], skip_special_tokens=True)\n",
    "t"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'Perdana Menteri Tan Sri Muhyiddin Yassin perlu dikekalkan sebagai perdana menteri sehingga tamat penggal ini, kata Presiden PKR, Datuk Seri Anwar Ibrahim. Menurut beliau, jika Dr Mahathir kekal, beliau perlulah menolong Dr M. Ini kerana, katanya, Dr Mahathir tidak pernah mendesak agar beliau meletak jawatan. Anwar juga menegaskan, Dr Mahathir perlu diberi peluang untuk mentadbir negara. \"Jika beliau mahu kekal sebagai perdana menteri sehingga tamat penggal ini, Dr Mahathir juga boleh berbuat demikian,\" katanya dalam satu sidang media, di sini, pada Isnin.'"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "input_ids = tokenizer.encode(points, return_tensors = 'pt')\n",
    "outputs = model.generate(input_ids,do_sample=True,\n",
    "    max_length=256, \n",
    "    penalty_alpha=0.8, top_k=4)\n",
    "t = tokenizer.decode(outputs[0], skip_special_tokens=True)\n",
    "t"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'surat-khabar: 1. Neelofa tetap dengan keputusan untuk berkahwin akhir tahun ini. 2. Long Tiger sanggup membantu Neelofa. 3. Tiba-tiba Long Tiger bergaduh dengan Husein.'"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "isi_penting = ['Neelofa tetap dengan keputusan untuk berkahwin akhir tahun ini',\n",
    "              'Long Tiger sanggup membantu Neelofa',\n",
    "              'Tiba-tiba Long Tiger bergaduh dengan Husein']\n",
    "\n",
    "points = [\n",
    "    f'{no + 1}. {remove_repeat_fullstop(string)}.'\n",
    "    for no, string in enumerate(isi_penting)\n",
    "]\n",
    "points = ' '.join(points)\n",
    "points = f'surat-khabar: {points}'\n",
    "points"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'PELAKON NeelOne tetap dengan keputusan untuk berkahwin akhir tahun ini walaupun berdepan kontroversi dengan teman lelakinya Husein. Long Tiger sanggup membantu bekas isterinya itu, kata akreviti TV Alhijrah itu, dia dan isteri, Farah Nabilah Mohd. Farah, 32, tidak mahu bergaduh sesama sendiri. Tiba-tiba Long Tiger bergaduh dengan Husebin di rumah mereka di Petaling Jaya baru-baru ini\". Dia tak nak bergaduh,\" katanya seperti dilaporkan portal Berita Harian hari ini. BACA SEMUA MENGENAI KRISIF PERKEMBANGAN POLITIES DI LAMAN MIKRO INI BACA: Didakwa menjadi mangsa buli siber, Farah Nabilah sah bergelar isteri kepada Wan Nur Farah Awaludin Dalam pada itu, menerusi perkongsian di Instagramnya, Farah turut memuat naik video yang menunjukkan pasangan itu saling bergurau senda di atas pentas bersama-Samad dan Wan Nur Farah Awaludin. View this post on Instagram I am happy to announce our marriage ended 2018 and we\\'ve met a couple in the same time, both of us.'"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "input_ids = tokenizer.encode(points, return_tensors = 'pt')\n",
    "outputs = model.generate(input_ids,\n",
    "    max_length=256, \n",
    "    penalty_alpha=0.8, top_k=4)\n",
    "t = tokenizer.decode(outputs[0], skip_special_tokens=True)\n",
    "t"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'PELAKON dan pengacara Neelofa tetap dengan keputusan untuk berkahwin akhir tahun ini selepas melihat keakraban anak mereka, Husein. Tiba-tiba Long Tiger itu bergaduh dengan Husein. \"Terkejut sebab Long Tiger begitu rapat dengan anak kami,\" kata Neelofa kepada Astro Gempak. \"Sepanjang tempoh saya bersama isteri selama tiga bulan, memang kami berbeza. \"Tak dinafikan, ada anak-anak dan keluarga saya juga mempunyai hubungan yang baik seperti kami. \"Bagaimanapun, kami sudah berkahwin dan masih mengekalkan hubungan baik dengan suami walaupun mereka masih belum mempelai\"! tambah Neelofa. Namun, ada juga peminat yang mendoakan agar hubungan yang terjalin dengan Long Tiger dipermudahkan. \"Sepanjang Ramadan ini, peminat sedang mendoakan agar kami dikurniakan rezeki pada bulan yang mulia ini. \"Malah, ada juga yang mendoakan agar kami menjadi lebih baik lagi. \"Terima kasih semua. Selamat menyambut Hari Raya Aidilfitri dan selamat menyambut Aidilfitri buat saya dan isteri. Terima kasih banyak-banyak,\" kongsi netizen. Terdahulu, pasangan ini berkongsi hasrat untuk mendirikan rumah tangga pada pertengahan tahun ini selepas lima bulan merancang untuk mendirikan rumah tangga.'"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "input_ids = tokenizer.encode(points, return_tensors = 'pt')\n",
    "outputs = model.generate(input_ids,\n",
    "                        do_sample=True, \n",
    "    max_length=256, \n",
    "    top_k=50, \n",
    "    top_p=0.95, )\n",
    "t = tokenizer.decode(outputs[0], skip_special_tokens=True)\n",
    "t"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'karangan: 1. Dapat memupuk semangat kerjasama. 2. Dapat mengeratkan hubungan silaturahim. 3. Kebersihan kawasan persekitaran terpelihara. 4. Terhindar daripada wabak penyakit seperti Denggi. 5. Mengisi masa lapang. 6. Menerapkan nilai-nilai murni dalam kehidupan.'"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "isi_penting = ['Dapat memupuk semangat kerjasama',\n",
    "               'Dapat mengeratkan hubungan silaturahim.',\n",
    "               'Kebersihan kawasan persekitaran terpelihara.',\n",
    "               'Terhindar daripada wabak penyakit seperti Denggi',\n",
    "               'Mengisi masa lapang',\n",
    "               'Menerapkan nilai-nilai murni dalam kehidupan']\n",
    "\n",
    "points = [\n",
    "    f'{no + 1}. {remove_repeat_fullstop(string)}.'\n",
    "    for no, string in enumerate(isi_penting)\n",
    "]\n",
    "points = ' '.join(points)\n",
    "points = f'karangan: {points}'\n",
    "points"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'Sejak dua dan tiga dekad kebelakangan ini, Malaysia mengalami perubahan daripada sebuah negara yang amat pesat membangun kepada sebuah negara yang pesat membangun dengan populasi rakyat yang berbilang kaum. Kepelbagaian etnik dan agama yang terdapat di negara kita telah membentuk masyarakat yang harmoni dan hidup dalam keadaan aman damai. Kemajmukan masyarakat semakin dirasai dengan adanya hubungan yang baik antara kaum serta masyarakat yang saling tolong-menolong antara satu sama lain. Sebagai rakyat Malaysia yang bertuah, kita haruslah menghargai dan memberi penghargaan kepada diri kita sendiri atas nikmat yang telah dikurniakan oleh Allah. Dalam konteks yang berlainan pula, kita juga haruslah bekerjasama demi membangunkan negara. Kita haruslah membuka ruang yang luas kepada orang-orang yang mempunyai sifat-sifat murni ini untuk bersama-sama membangunkan negara. Jika ditelusuri, nilai-nilai murni dalam kehidupan adalah nilai-nilai yang penting seperti toleransi, saling bekerjasama, saling menghormati dan toleransi antara kaum serta budaya hidup bermasyarakat yang positif. Nilai-nilai itu adalah penting bagi membentuk sahsiah yang baik bagi diri kita serta ahli keluarga khususnya yang baharu berkeluarga. Tamsilnya, budaya bermasyarakat yang diamalkan oleh nenek moyang kita telah berjaya menjadi iltizam untuk menjadi seorang yang berjaya, hidup bersederhana dalam kehidupannya serta mempunyai keperibadian yang mulia. Tamsilnya'"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "input_ids = tokenizer.encode(points, return_tensors = 'pt')\n",
    "outputs = model.generate(input_ids,\n",
    "                        do_sample=True, \n",
    "    max_length=256, \n",
    "    top_k=50, \n",
    "    top_p=0.95, )\n",
    "t = tokenizer.decode(outputs[0], skip_special_tokens=True)\n",
    "t"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'karangan: 1. Rajin berusaha - tidak mudah putus asa. 2. Menghormati orang yang lebih tua - mendapat keberkatan. 3. Melibatkan diri secara aktif dalam bidang kokurikulum. 4. Memberi tumpuan ketika guru mengajar. 5. Berdisiplin - menepati jadual yang disediakan. 6. Bercita-cita tinggi - mempunyai keazaman yang tinggi untuk berjaya.'"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "isi_penting = ['Rajin berusaha – tidak mudah putus asa',\n",
    "               'Menghormati orang yang lebih tua – mendapat keberkatan',\n",
    "               'Melibatkan diri secara aktif dalam bidang kokurikulum',\n",
    "               'Memberi tumpuan ketika guru mengajar.',\n",
    "               'Berdisiplin – menepati jadual yang disediakan.',\n",
    "               'Bercita-cita tinggi – mempunyai keazaman yang tinggi untuk berjaya']\n",
    "\n",
    "points = [\n",
    "    f'{no + 1}. {remove_repeat_fullstop(string)}.'\n",
    "    for no, string in enumerate(isi_penting)\n",
    "]\n",
    "points = ' '.join(points)\n",
    "points = f'karangan: {points}'\n",
    "points"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'Mutisan modenisasi hari ini menjadikan pelbagai perkara seperti masa luang baru di alam maya menjadi semakin rancak dan pelbagai cabaran serta rintangan yang dihadapi para pelajar. Jika ditelusuri, golongan yang berpelajaran di institusi pengajian tinggi lazimnya mempunyai masalah untuk menghadapi peperiksaan atau mata Pelajaran yang subjektif atau subjek teras seperti Matematik, Bahasa Inggeris dan Sains. Sebagai warganegara kelas pertama, kita seharusnya menjadi contoh dan ikutan pelajar-pelajar di peringkat sekolah rendah dan menengah dalam bidang kemahiran dan kesukarelawanan seperti memasak, menjahit dan berniaga. Kegiatan-kegiatan yang bermanfaat kepada diri dan juga masyarakat seharusnya dititikber'"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "input_ids = tokenizer.encode(points, return_tensors = 'pt')\n",
    "outputs = model.generate(input_ids,\n",
    "                        penalty_alpha=0.8, top_k=4, max_length = 128)\n",
    "t = tokenizer.decode(outputs[0], skip_special_tokens=True)\n",
    "t"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'Malaysia telah melalui fasa pembaharuan yang panjang berbanding sebelum ini. Kemajmukan masyarakat semakin dikecapi dan melahirkan ramai individu yang mempunyai pencapaian yang cemerlang. Kemajmukan masyarakat semakin menjadi kepunyaan kepada golongan muda hari ini kerana mereka mempunyai cita-cita dan impian yang ingin dicapai sehingga mereka mampu berdiri sama tinggi dengan negara yang maju. Begitu juga dengan bangsa yang telah berjaya mengharumkan nama negara dan menjadi kebanggaan rakyat Malaysia apabila berjaya mengekalkan momentum dalam bidang akademik dan kokurikulum sehingga mendapat keputusan cemerlang dalam peperiksaan yang disertai. Namun, hari ini kita tidak dapat melihat dengan mata kasar rancangan pembangunan negara yang diterajui oleh kerajaan kerana kegagalan'"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "input_ids = tokenizer.encode(points, return_tensors = 'pt')\n",
    "outputs = model.generate(input_ids,\n",
    "                        do_sample=True, \n",
    "    max_length=128, \n",
    "    top_k=50, \n",
    "    top_p=0.95, )\n",
    "t = tokenizer.decode(outputs[0], skip_special_tokens=True)\n",
    "t"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'penerangan-produk: 1. ayam sedap. 2. ayam yang lembut. 3. ayam bersih. 4. campuran herba yang sedap. 5. anda boleh mandi bersama dengan ayam untuk kulit yang lebih licin dan gebu.'"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "isi_penting = ['ayam sedap',\n",
    "               'ayam yang lembut',\n",
    "               'ayam bersih',\n",
    "               'campuran herba yang sedap',\n",
    "              'anda boleh mandi bersama dengan ayam untuk kulit yang lebih licin dan gebu']\n",
    "\n",
    "points = [\n",
    "    f'{no + 1}. {remove_repeat_fullstop(string)}.'\n",
    "    for no, string in enumerate(isi_penting)\n",
    "]\n",
    "points = ' '.join(points)\n",
    "points = f'penerangan-produk: {points}'\n",
    "points"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'Ayam yang disumbat dengan kismica, bawang putih, lavenzuela dan campuran herbetik yang sedap dan berkhasiat yang boleh anda rasakan untuk diri sendiri atau orang yang anda sayangi. Anda boleh mandi bersama dengan ayam untuk kulit yang lebih licin dan gelatin, ayam sedap. Dirumuskan secara saintifik dengan ramuan-asas yang berasal dari alam semula jadi, ayam yang disumbat dengan kismica, bawang putih, lavenzuela dan campuran herba yang sedap dan berargumentasi boleh digunakan dalam sup ayam, sup ayam, salad dan banyak lagi.'"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "input_ids = tokenizer.encode(points, return_tensors = 'pt')\n",
    "outputs = model.generate(input_ids,\n",
    "                        penalty_alpha=0.8, top_k=4, max_length = 128)\n",
    "t = tokenizer.decode(outputs[0], skip_special_tokens=True)\n",
    "t"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'Ayam yang disumbat dengan kismica, bawang putih, lavenzuela dan campuran herbetik yang sedap dan berkhasiat yang boleh anda rasakan untuk diri sendiri atau orang yang anda sayangi. Anda boleh mandi bersama dengan ayam untuk kulit yang lebih licin dan gelatin, ayam sedap. Dirumuskan secara saintifik dengan ramuan-asas yang berasal dari alam semula jadi, ayam yang disumbat dengan kismica, bawang putih, lavenzuela dan campuran herba yang sedap dan berargumentasi boleh digunakan dalam sup ayam, sup ayam, salad dan banyak lagi.'"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "remove_html_tags(t)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'Semua ramuan ini telah ditambahkan untuk kulit, kaldu dan kulit. Anda boleh mencampurkan dengan baik, dan dengan pelbagai ramuan, anda boleh mandi bersama dengan ayam untuk kulit yang lebih licin dan gebu. Dibungkus dengan ayam sedap. Ayam yang lembut. \"Ayam bersih. Ayam bersih. Ayam gebu.\" Ayam sedap. Ayam bersih. Ayam bersih. Ayam segar. Ayam segar. Ayam segar. Ayam segar. Ayam gebu. Ayam segar. Ayam gebu. Ayam segar. Ayam segar. Ayam gebu. Ayam segar. Ayam gebu. Ayam gebu. Ayam gebu. Ayam gebu. Ayam segar. Ayam gebu. Ayam gebu. Ayam segar. Ayam segar. Ayam gebu. Ayam gebu. Ayam gebu. Ayam gebu. Ayam gebu. Ayam gebu. Ayam gebu. Ayam gebu. Ayam gebu. Ayam gebu. Ayam gebu. Ayam gebu. Ayam ge'"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "input_ids = tokenizer.encode(points, return_tensors = 'pt')\n",
    "outputs = model.generate(input_ids,\n",
    "                        do_sample=True, \n",
    "    max_length=256, \n",
    "    top_k=50, \n",
    "    top_p=0.9)\n",
    "t = tokenizer.decode(outputs[0], skip_special_tokens=True)\n",
    "t"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'penerangan-produk: 1. Penubuhan Makma Mikrobiologi. 2. mengawal kualiti produk. 3. memastikan produknya adalah suci. 4. satu tempat penyelidikan dan pembangunan produk. 5. peralatan teknologi tinggi.'"
      ]
     },
     "execution_count": 25,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# https://ms.wikipedia.org/wiki/Burger_Ramly\n",
    "isi_penting = ['Penubuhan Makma Mikrobiologi',\n",
    "               'mengawal kualiti produk',\n",
    "               'memastikan produknya adalah suci',\n",
    "               'satu tempat penyelidikan dan pembangunan produk',\n",
    "              'peralatan teknologi tinggi']\n",
    "\n",
    "points = [\n",
    "    f'{no + 1}. {remove_repeat_fullstop(string)}.'\n",
    "    for no, string in enumerate(isi_penting)\n",
    "]\n",
    "points = ' '.join(points)\n",
    "points = f'penerangan-produk: {points}'\n",
    "points"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'\"BORANG PENTING\" adalah peneraju di sebalik produk dan produk penjagaan diri untuk meningkatkan kesejahteraan dan kesejahteraan komuniti di seluruh dunia. Sistem perodal sejuk ini sangat berkesan untuk mengurangkan pemanasan, demam sejuk dan perubahan keadaan iklim. Pengatur sistem makanan kami yang memastikan produknya adalah suci menggunakan alat steril semula jadi. Tambahan pula, kami mempunyai sistem pengurusan dan penyelidikan yang unik, tidak seperti sistem iklim lain yang mengawal kualiti produk. Dari peralatan teknologi tinggi hingga sistem dobi yang inovatif, peralatan kami yang memenuhi standard perubatan di seluruh dunia dan menerapkan sains sosial dan alam sekitar dalam rawatan penduduk global tidak mudah ketinggalan. Inovasi kami dirumuskan untuk'"
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "input_ids = tokenizer.encode(points, return_tensors = 'pt')\n",
    "outputs = model.generate(input_ids,\n",
    "                        do_sample=True, \n",
    "    max_length=128, \n",
    "    top_p=0.95, top_k=0)\n",
    "t = tokenizer.decode(outputs[0], skip_special_tokens=True)\n",
    "t"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'\"BORANG PENTING\" adalah peneraju di sebalik produk dan produk penjagaan diri untuk meningkatkan kesejahteraan dan kesejahteraan komuniti di seluruh dunia. Sistem perodal sejuk ini sangat berkesan untuk mengurangkan pemanasan, demam sejuk dan perubahan keadaan iklim. Pengatur sistem makanan kami yang memastikan produknya adalah suci menggunakan alat steril semula jadi. Tambahan pula, kami mempunyai sistem pengurusan dan penyelidikan yang unik, tidak seperti sistem iklim lain yang mengawal kualiti produk. Dari peralatan teknologi tinggi hingga sistem dobi yang inovatif, peralatan kami yang memenuhi standard perubatan di seluruh dunia dan menerapkan sains sosial dan alam sekitar dalam rawatan penduduk global tidak mudah ketinggalan. Inovasi kami dirumuskan untuk'"
      ]
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "remove_html_tags(t)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "CommitInfo(commit_url='https://huggingface.co/mesolitica/finetune-isi-penting-generator-t5-base-standard-bahasa-cased/commit/eeed0b7bbab6c80d7fa60de788d8152163ca8a82', commit_message='Upload T5ForConditionalGeneration', commit_description='', oid='eeed0b7bbab6c80d7fa60de788d8152163ca8a82', pr_url=None, pr_revision=None, pr_num=None)"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model.push_to_hub('finetune-isi-penting-generator-t5-base-standard-bahasa-cased', organization='mesolitica')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "CommitInfo(commit_url='https://huggingface.co/mesolitica/finetune-isi-penting-generator-t5-base-standard-bahasa-cased/commit/9b8c37c93f869df9e52d32918424fbf10b1f77b2', commit_message='Upload tokenizer', commit_description='', oid='9b8c37c93f869df9e52d32918424fbf10b1f77b2', pr_url=None, pr_revision=None, pr_num=None)"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "tokenizer.push_to_hub('finetune-isi-penting-generator-t5-base-standard-bahasa-cased', organization='mesolitica')"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.10"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
